package com.jrx.anytxn.investor.entity;

import java.math.BigDecimal;
import java.util.Date;

/**
 *  
 * 表:am_interest_accrual_investor_info 
 * @author Administrator 
 * @date 2020-07-14 
 */
public class AmInterestAccrualInvestorInfo {
    /**
     * 自增主键
     * 表字段:id
     */
    private Long id;

    /**
     * 租户ID
     * 表字段:tenant_id
     */
    private String tenantId;

    /**
     * 账户id
     * 表字段:account_id
     */
    private String accountId;

    /**
     * 机构号
     * 表字段:organization_id
     */
    private String organizationId;

    /**
     * 渠道id
     * 表字段:channel
     */
    private String channel;

    /**
     * 累计账户状态 0 = 新建; 1 = 正常; 2 = 已停止计息; 8 = 已完成计息; 9 = 取消;
     * 表字段:account_status
     */
    private String accountStatus;

    /**
     * 产品id
     * 表字段:product_id
     */
    private String productId;

    /**
     * 账户类型 66= 利息累计账户 ; 10 = 罚息累计账户; 20 = 复利累计账户; 70 = 贴息累计账户;
     * 表字段:account_type
     */
    private String accountType;

    /**
     * 客户id
     * 表字段:customer_id
     */
    private String customerId;

    /**
     * 出资方ID
     * 表字段:investor_id
     */
    private String investorId;

    /**
     * 贷款id
     * 表字段:investor_loan_id
     */
    private String investorLoanId;

    /**
     * 客户订单id
     * 表字段:loan_id
     */
    private String loanId;

    /**
     * 第几期
     * 表字段:billing_tenor
     */
    private Integer billingTenor;

    /**
     * 计息金额
     * 表字段:accrual_base_amount
     */
    private BigDecimal accrualBaseAmount;

    /**
     * 日利率
     * 表字段:accrual_daily_rate
     */
    private BigDecimal accrualDailyRate;

    /**
     * 交易起息日期
     * 表字段:accrual_start_date
     */
    private Date accrualStartDate;

    /**
     * 已累计总利息
     * 表字段:accrual_total_accru_interest
     */
    private BigDecimal accrualTotalAccruInterest;

    /**
     * 已累计总天数
     * 表字段:accrual_total_accru_days
     */
    private Integer accrualTotalAccruDays;

    /**
     * 新增累计利息
     * 表字段:accrual_new_interest
     */
    private BigDecimal accrualNewInterest;

    /**
     * 新增累计天数
     * 表字段:accrual_new_days
     */
    private Integer accrualNewDays;

    /**
     * 累计利息开始日期
     * 表字段:accrual_new_from_date
     */
    private Date accrualNewFromDate;

    /**
     * 累计利息结束日期
     * 表字段:accrual_new_to_date
     */
    private Date accrualNewToDate;

    /**
     * 每日调整
     * 表字段:accrual_daily_adjustment
     */
    private BigDecimal accrualDailyAdjustment;

    /**
     * 每日调整后累计
     * 表字段:accrual_daily_after_adjustment
     */
    private BigDecimal accrualDailyAfterAdjustment;

    /**
     * 每日计提
     * 表字段:accrual_daily_provision
     */
    private BigDecimal accrualDailyProvision;

    /**
     * 停止累计息标志 0 = 正常计息 ;1 = 停止计息;
     * 表字段:stop_accrual_flag
     */
    private String stopAccrualFlag;

    /**
     * 最大利息金额
     * 表字段:max_interest
     */
    private BigDecimal maxInterest;

    /**
     * 利息参数表id
     * 表字段:interest_table_id
     */
    private String interestTableId;

    /**
     * 罚息参数表id
     * 表字段:penalty_table_id
     */
    private String penaltyTableId;

    /**
     * 最迟还款日
     * 表字段:payment_due_date
     */
    private Date paymentDueDate;

    /**
     * 是否已经分润 0 = 未分润; 1 = 已分润; 默认为0，未分润
     * 表字段:profit_shared
     */
    private String profitShared;

    /**
     * 债权转移标识 0 = 否; 1 = 是;
     * 表字段:bal_transfer_flag
     */
    private String balTransferFlag;

    /**
     * 代偿标识  0 = 否; 1 = 是;
     * 表字段:compensatory_flag
     */
    private String compensatoryFlag;

    /**
     * 总期数
     * 表字段:total_tenor
     */
    private Integer totalTenor;

    /**
     * 总天数 贷款期限总天数
     * 表字段:total_days
     */
    private Integer totalDays;

    /**
     * 会计状态 0 = 正常;1 = 逾期; 
     * 表字段:accounting_phase
     */
    private String accountingPhase;

    /**
     * 非应计状态 0 = 应计; 1 = 非应计;
     * 表字段:non_accruals_flag
     */
    private String nonAccrualsFlag;

    /**
     * 五级分类 0 = 正常; 1 = 关注; 2 = 次级; 3 = 可疑; 4 = 损失;
     * 表字段:loan_classify
     */
    private String loanClassify;

    /**
     * 税金
     * 表字段:tax_amt
     */
    private BigDecimal taxAmt;

    /**
     * 债务归属 00=客户; 01=商户; 02=平台; 03=资金方 ; 04=渠道;
     * 表字段:liability_flag
     */
    private String liabilityFlag;

    /**
     * 创建时间
     * 表字段:create_time
     */
    private Date createTime;

    /**
     * 最后更新时间
     * 表字段:update_time
     */
    private Date updateTime;

    /**
     * 最后更新操作员
     * 表字段:update_by
     */
    private String updateBy;

    /**
     * 记录版本号
     * 表字段:record_version_number
     */
    private Integer recordVersionNumber;

    /**
     * 交易码
     * 表字段:txn_code
     */
    private String txnCode;

    /**
     * 获取自增主键
     * @return id Long
     */
    public Long getId() {
        return id;
    }

    /**
     * 设置自增主键
     * @param id 自增主键
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * 获取租户ID
     * @return tenantId String
     */
    public String getTenantId() {
        return tenantId;
    }

    /**
     * 设置租户ID
     * @param tenantId 租户ID
     */
    public void setTenantId(String tenantId) {
        this.tenantId = tenantId;
    }

    /**
     * 获取账户id
     * @return accountId String
     */
    public String getAccountId() {
        return accountId;
    }

    /**
     * 设置账户id
     * @param accountId 账户id
     */
    public void setAccountId(String accountId) {
        this.accountId = accountId;
    }

    /**
     * 获取机构号
     * @return organizationId String
     */
    public String getOrganizationId() {
        return organizationId;
    }

    /**
     * 设置机构号
     * @param organizationId 机构号
     */
    public void setOrganizationId(String organizationId) {
        this.organizationId = organizationId;
    }

    /**
     * 获取渠道id
     * @return channel String
     */
    public String getChannel() {
        return channel;
    }

    /**
     * 设置渠道id
     * @param channel 渠道id
     */
    public void setChannel(String channel) {
        this.channel = channel;
    }

    /**
     * 获取累计账户状态 0 = 新建; 1 = 正常; 2 = 已停止计息; 8 = 已完成计息; 9 = 取消;
     * @return accountStatus String
     */
    public String getAccountStatus() {
        return accountStatus;
    }

    /**
     * 设置累计账户状态 0 = 新建; 1 = 正常; 2 = 已停止计息; 8 = 已完成计息; 9 = 取消;
     * @param accountStatus 累计账户状态 0 = 新建; 1 = 正常; 2 = 已停止计息; 8 = 已完成计息; 9 = 取消;
     */
    public void setAccountStatus(String accountStatus) {
        this.accountStatus = accountStatus;
    }

    /**
     * 获取产品id
     * @return productId String
     */
    public String getProductId() {
        return productId;
    }

    /**
     * 设置产品id
     * @param productId 产品id
     */
    public void setProductId(String productId) {
        this.productId = productId;
    }

    /**
     * 获取账户类型 66= 利息累计账户 ; 10 = 罚息累计账户; 20 = 复利累计账户; 70 = 贴息累计账户;
     * @return accountType String
     */
    public String getAccountType() {
        return accountType;
    }

    /**
     * 设置账户类型 66= 利息累计账户 ; 10 = 罚息累计账户; 20 = 复利累计账户; 70 = 贴息累计账户;
     * @param accountType 账户类型 66= 利息累计账户 ; 10 = 罚息累计账户; 20 = 复利累计账户; 70 = 贴息累计账户;
     */
    public void setAccountType(String accountType) {
        this.accountType = accountType;
    }

    /**
     * 获取客户id
     * @return customerId String
     */
    public String getCustomerId() {
        return customerId;
    }

    /**
     * 设置客户id
     * @param customerId 客户id
     */
    public void setCustomerId(String customerId) {
        this.customerId = customerId;
    }

    /**
     * 获取出资方ID
     * @return investorId String
     */
    public String getInvestorId() {
        return investorId;
    }

    /**
     * 设置出资方ID
     * @param investorId 出资方ID
     */
    public void setInvestorId(String investorId) {
        this.investorId = investorId;
    }

    /**
     * 获取贷款id
     * @return investorLoanId String
     */
    public String getInvestorLoanId() {
        return investorLoanId;
    }

    /**
     * 设置贷款id
     * @param investorLoanId 贷款id
     */
    public void setInvestorLoanId(String investorLoanId) {
        this.investorLoanId = investorLoanId;
    }

    /**
     * 获取客户订单id
     * @return loanId String
     */
    public String getLoanId() {
        return loanId;
    }

    /**
     * 设置客户订单id
     * @param loanId 客户订单id
     */
    public void setLoanId(String loanId) {
        this.loanId = loanId;
    }

    /**
     * 获取第几期
     * @return billingTenor Integer
     */
    public Integer getBillingTenor() {
        return billingTenor;
    }

    /**
     * 设置第几期
     * @param billingTenor 第几期
     */
    public void setBillingTenor(Integer billingTenor) {
        this.billingTenor = billingTenor;
    }

    /**
     * 获取计息金额
     * @return accrualBaseAmount BigDecimal
     */
    public BigDecimal getAccrualBaseAmount() {
        return accrualBaseAmount;
    }

    /**
     * 设置计息金额
     * @param accrualBaseAmount 计息金额
     */
    public void setAccrualBaseAmount(BigDecimal accrualBaseAmount) {
        this.accrualBaseAmount = accrualBaseAmount;
    }

    /**
     * 获取日利率
     * @return accrualDailyRate BigDecimal
     */
    public BigDecimal getAccrualDailyRate() {
        return accrualDailyRate;
    }

    /**
     * 设置日利率
     * @param accrualDailyRate 日利率
     */
    public void setAccrualDailyRate(BigDecimal accrualDailyRate) {
        this.accrualDailyRate = accrualDailyRate;
    }

    /**
     * 获取交易起息日期
     * @return accrualStartDate Date
     */
    public Date getAccrualStartDate() {
        return accrualStartDate;
    }

    /**
     * 设置交易起息日期
     * @param accrualStartDate 交易起息日期
     */
    public void setAccrualStartDate(Date accrualStartDate) {
        this.accrualStartDate = accrualStartDate;
    }

    /**
     * 获取已累计总利息
     * @return accrualTotalAccruInterest BigDecimal
     */
    public BigDecimal getAccrualTotalAccruInterest() {
        return accrualTotalAccruInterest;
    }

    /**
     * 设置已累计总利息
     * @param accrualTotalAccruInterest 已累计总利息
     */
    public void setAccrualTotalAccruInterest(BigDecimal accrualTotalAccruInterest) {
        this.accrualTotalAccruInterest = accrualTotalAccruInterest;
    }

    /**
     * 获取已累计总天数
     * @return accrualTotalAccruDays Integer
     */
    public Integer getAccrualTotalAccruDays() {
        return accrualTotalAccruDays;
    }

    /**
     * 设置已累计总天数
     * @param accrualTotalAccruDays 已累计总天数
     */
    public void setAccrualTotalAccruDays(Integer accrualTotalAccruDays) {
        this.accrualTotalAccruDays = accrualTotalAccruDays;
    }

    /**
     * 获取新增累计利息
     * @return accrualNewInterest BigDecimal
     */
    public BigDecimal getAccrualNewInterest() {
        return accrualNewInterest;
    }

    /**
     * 设置新增累计利息
     * @param accrualNewInterest 新增累计利息
     */
    public void setAccrualNewInterest(BigDecimal accrualNewInterest) {
        this.accrualNewInterest = accrualNewInterest;
    }

    /**
     * 获取新增累计天数
     * @return accrualNewDays Integer
     */
    public Integer getAccrualNewDays() {
        return accrualNewDays;
    }

    /**
     * 设置新增累计天数
     * @param accrualNewDays 新增累计天数
     */
    public void setAccrualNewDays(Integer accrualNewDays) {
        this.accrualNewDays = accrualNewDays;
    }

    /**
     * 获取累计利息开始日期
     * @return accrualNewFromDate Date
     */
    public Date getAccrualNewFromDate() {
        return accrualNewFromDate;
    }

    /**
     * 设置累计利息开始日期
     * @param accrualNewFromDate 累计利息开始日期
     */
    public void setAccrualNewFromDate(Date accrualNewFromDate) {
        this.accrualNewFromDate = accrualNewFromDate;
    }

    /**
     * 获取累计利息结束日期
     * @return accrualNewToDate Date
     */
    public Date getAccrualNewToDate() {
        return accrualNewToDate;
    }

    /**
     * 设置累计利息结束日期
     * @param accrualNewToDate 累计利息结束日期
     */
    public void setAccrualNewToDate(Date accrualNewToDate) {
        this.accrualNewToDate = accrualNewToDate;
    }

    /**
     * 获取每日调整
     * @return accrualDailyAdjustment BigDecimal
     */
    public BigDecimal getAccrualDailyAdjustment() {
        return accrualDailyAdjustment;
    }

    /**
     * 设置每日调整
     * @param accrualDailyAdjustment 每日调整
     */
    public void setAccrualDailyAdjustment(BigDecimal accrualDailyAdjustment) {
        this.accrualDailyAdjustment = accrualDailyAdjustment;
    }

    /**
     * 获取每日调整后累计
     * @return accrualDailyAfterAdjustment BigDecimal
     */
    public BigDecimal getAccrualDailyAfterAdjustment() {
        return accrualDailyAfterAdjustment;
    }

    /**
     * 设置每日调整后累计
     * @param accrualDailyAfterAdjustment 每日调整后累计
     */
    public void setAccrualDailyAfterAdjustment(BigDecimal accrualDailyAfterAdjustment) {
        this.accrualDailyAfterAdjustment = accrualDailyAfterAdjustment;
    }

    /**
     * 获取每日计提
     * @return accrualDailyProvision BigDecimal
     */
    public BigDecimal getAccrualDailyProvision() {
        return accrualDailyProvision;
    }

    /**
     * 设置每日计提
     * @param accrualDailyProvision 每日计提
     */
    public void setAccrualDailyProvision(BigDecimal accrualDailyProvision) {
        this.accrualDailyProvision = accrualDailyProvision;
    }

    /**
     * 获取停止累计息标志 0 = 正常计息 ;1 = 停止计息;
     * @return stopAccrualFlag String
     */
    public String getStopAccrualFlag() {
        return stopAccrualFlag;
    }

    /**
     * 设置停止累计息标志 0 = 正常计息 ;1 = 停止计息;
     * @param stopAccrualFlag 停止累计息标志 0 = 正常计息 ;1 = 停止计息;
     */
    public void setStopAccrualFlag(String stopAccrualFlag) {
        this.stopAccrualFlag = stopAccrualFlag;
    }

    /**
     * 获取最大利息金额
     * @return maxInterest BigDecimal
     */
    public BigDecimal getMaxInterest() {
        return maxInterest;
    }

    /**
     * 设置最大利息金额
     * @param maxInterest 最大利息金额
     */
    public void setMaxInterest(BigDecimal maxInterest) {
        this.maxInterest = maxInterest;
    }

    /**
     * 获取利息参数表id
     * @return interestTableId String
     */
    public String getInterestTableId() {
        return interestTableId;
    }

    /**
     * 设置利息参数表id
     * @param interestTableId 利息参数表id
     */
    public void setInterestTableId(String interestTableId) {
        this.interestTableId = interestTableId;
    }

    /**
     * 获取罚息参数表id
     * @return penaltyTableId String
     */
    public String getPenaltyTableId() {
        return penaltyTableId;
    }

    /**
     * 设置罚息参数表id
     * @param penaltyTableId 罚息参数表id
     */
    public void setPenaltyTableId(String penaltyTableId) {
        this.penaltyTableId = penaltyTableId;
    }

    /**
     * 获取最迟还款日
     * @return paymentDueDate Date
     */
    public Date getPaymentDueDate() {
        return paymentDueDate;
    }

    /**
     * 设置最迟还款日
     * @param paymentDueDate 最迟还款日
     */
    public void setPaymentDueDate(Date paymentDueDate) {
        this.paymentDueDate = paymentDueDate;
    }

    /**
     * 获取是否已经分润 0 = 未分润; 1 = 已分润; 默认为0，未分润
     * @return profitShared String
     */
    public String getProfitShared() {
        return profitShared;
    }

    /**
     * 设置是否已经分润 0 = 未分润; 1 = 已分润; 默认为0，未分润
     * @param profitShared 是否已经分润 0 = 未分润; 1 = 已分润; 默认为0，未分润
     */
    public void setProfitShared(String profitShared) {
        this.profitShared = profitShared;
    }

    /**
     * 获取债权转移标识 0 = 否; 1 = 是;
     * @return balTransferFlag String
     */
    public String getBalTransferFlag() {
        return balTransferFlag;
    }

    /**
     * 设置债权转移标识 0 = 否; 1 = 是;
     * @param balTransferFlag 债权转移标识 0 = 否; 1 = 是;
     */
    public void setBalTransferFlag(String balTransferFlag) {
        this.balTransferFlag = balTransferFlag;
    }

    /**
     * 获取代偿标识  0 = 否; 1 = 是;
     * @return compensatoryFlag String
     */
    public String getCompensatoryFlag() {
        return compensatoryFlag;
    }

    /**
     * 设置代偿标识  0 = 否; 1 = 是;
     * @param compensatoryFlag 代偿标识  0 = 否; 1 = 是;
     */
    public void setCompensatoryFlag(String compensatoryFlag) {
        this.compensatoryFlag = compensatoryFlag;
    }

    /**
     * 获取总期数
     * @return totalTenor Integer
     */
    public Integer getTotalTenor() {
        return totalTenor;
    }

    /**
     * 设置总期数
     * @param totalTenor 总期数
     */
    public void setTotalTenor(Integer totalTenor) {
        this.totalTenor = totalTenor;
    }

    /**
     * 获取总天数 贷款期限总天数
     * @return totalDays Integer
     */
    public Integer getTotalDays() {
        return totalDays;
    }

    /**
     * 设置总天数 贷款期限总天数
     * @param totalDays 总天数 贷款期限总天数
     */
    public void setTotalDays(Integer totalDays) {
        this.totalDays = totalDays;
    }

    /**
     * 获取会计状态 0 = 正常;1 = 逾期; 
     * @return accountingPhase String
     */
    public String getAccountingPhase() {
        return accountingPhase;
    }

    /**
     * 设置会计状态 0 = 正常;1 = 逾期; 
     * @param accountingPhase 会计状态 0 = 正常;1 = 逾期; 
     */
    public void setAccountingPhase(String accountingPhase) {
        this.accountingPhase = accountingPhase;
    }

    /**
     * 获取非应计状态 0 = 应计; 1 = 非应计;
     * @return nonAccrualsFlag String
     */
    public String getNonAccrualsFlag() {
        return nonAccrualsFlag;
    }

    /**
     * 设置非应计状态 0 = 应计; 1 = 非应计;
     * @param nonAccrualsFlag 非应计状态 0 = 应计; 1 = 非应计;
     */
    public void setNonAccrualsFlag(String nonAccrualsFlag) {
        this.nonAccrualsFlag = nonAccrualsFlag;
    }

    /**
     * 获取五级分类 0 = 正常; 1 = 关注; 2 = 次级; 3 = 可疑; 4 = 损失;
     * @return loanClassify String
     */
    public String getLoanClassify() {
        return loanClassify;
    }

    /**
     * 设置五级分类 0 = 正常; 1 = 关注; 2 = 次级; 3 = 可疑; 4 = 损失;
     * @param loanClassify 五级分类 0 = 正常; 1 = 关注; 2 = 次级; 3 = 可疑; 4 = 损失;
     */
    public void setLoanClassify(String loanClassify) {
        this.loanClassify = loanClassify;
    }

    /**
     * 获取税金
     * @return taxAmt BigDecimal
     */
    public BigDecimal getTaxAmt() {
        return taxAmt;
    }

    /**
     * 设置税金
     * @param taxAmt 税金
     */
    public void setTaxAmt(BigDecimal taxAmt) {
        this.taxAmt = taxAmt;
    }

    /**
     * 获取债务归属 00=客户; 01=商户; 02=平台; 03=资金方 ; 04=渠道;
     * @return liabilityFlag String
     */
    public String getLiabilityFlag() {
        return liabilityFlag;
    }

    /**
     * 设置债务归属 00=客户; 01=商户; 02=平台; 03=资金方 ; 04=渠道;
     * @param liabilityFlag 债务归属 00=客户; 01=商户; 02=平台; 03=资金方 ; 04=渠道;
     */
    public void setLiabilityFlag(String liabilityFlag) {
        this.liabilityFlag = liabilityFlag;
    }

    /**
     * 获取创建时间
     * @return createTime Date
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置创建时间
     * @param createTime 创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取最后更新时间
     * @return updateTime Date
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * 设置最后更新时间
     * @param updateTime 最后更新时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * 获取最后更新操作员
     * @return updateBy String
     */
    public String getUpdateBy() {
        return updateBy;
    }

    /**
     * 设置最后更新操作员
     * @param updateBy 最后更新操作员
     */
    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    /**
     * 获取记录版本号
     * @return recordVersionNumber Integer
     */
    public Integer getRecordVersionNumber() {
        return recordVersionNumber;
    }

    /**
     * 设置记录版本号
     * @param recordVersionNumber 记录版本号
     */
    public void setRecordVersionNumber(Integer recordVersionNumber) {
        this.recordVersionNumber = recordVersionNumber;
    }

    /**
     * 获取交易码
     * @return txnCode String
     */
    public String getTxnCode() {
        return txnCode;
    }

    /**
     * 设置交易码
     * @param txnCode 交易码
     */
    public void setTxnCode(String txnCode) {
        this.txnCode = txnCode;
    }
}